import paramiko
hostname = '192.168.1.71'
port = 22
username = 'root'
password = '123.com'

# 绑定实例
ssh = paramiko.SSHClient()
# AutoAddPolicy()自动添加主机keys
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
"""
# 连接主机信息
ssh.connect(hostname, port, username, password, timeout=5)
"""
# 使用key登录
import os
key_file = os.path.join(os.getcwd(), 'id_rsa')
# 指定key文件
key = paramiko.RSAKey.from_private_key_file(key_file)
ssh.connect(hostname, port, username, pkey=key)

# 执行Shell命令，结果分别保存在标准输入，标准输出和标准错误
stdin, stdout, stderr = ssh.exec_command('ls')
stdout = stdout.read()
error = stderr.read()
# 判断stderr输出是否为空，为空则打印运行结果，不为空打印报错信息
if not error:
   print("标准输出: %s" %stdout)
else:
   print("错误输出: %s" %error)

ssh.close()
